package agend.behaviours.registration;

import jade.core.behaviours.CyclicBehaviour;
import jade.lang.acl.ACLMessage;
import jade.lang.acl.MessageTemplate;

/**
 * Behaviour che sta in attesa di un messagio che lo informa che un
 * determinato utente si � registrato e a sua volta aggiungie un il
 * bheaviour che scrive sul DB
 */
public class GetInformRegistrationBehaviour extends CyclicBehaviour{

	private static final long serialVersionUID = 1L;
	
	private MessageTemplate messageTemplate;

	@Override
	public void action() {
		
		messageTemplate = MessageTemplate.MatchPerformative(ACLMessage.INFORM);
		
		ACLMessage aclMessage = myAgent.receive(messageTemplate);
		if(aclMessage != null)
		{		
			String content = aclMessage.getContent();
			
			String parts[] = content.split("-");
			
			//Prendiamo username e password
			String username = parts[0];
			String password = parts[1];
			
			DbUserRegistrationBehaviour dbUserRegistrationBehaviour = new DbUserRegistrationBehaviour();
			dbUserRegistrationBehaviour.setUsername(username);
			dbUserRegistrationBehaviour.setPassword(password);
			
			myAgent.addBehaviour(dbUserRegistrationBehaviour);
		}
		else
			block();
	}

}

